package com.example.reactor;

import lombok.extern.slf4j.Slf4j;
import reactor.core.publisher.Mono;

@Slf4j
public class Practice6 {

    public static void main(String[] args) {

        Mono.just(-100).flatMap(
                        i -> {
                            if (i > 100) {
                                return Mono.just(i / 2);
                            } else if (i > 0) {
                                return Mono.just(i);
                            } else {
                                return Mono.empty();
                            }
                        }
                )
                .switchIfEmpty(
                        Mono.fromRunnable(() -> {
                            log.info("流空了");
                        })
                )
                .subscribe(
                        integer -> {
                            log.info("打印结果 {}", integer);
                        }
                );


    }
}
